home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 09 - 1993 / 09.04 Apr 93 / Creating EPSF Files / PSDSetup.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-07-15  |  1.6 KB  |  50 lines  |  [TEXT/KAHL]

  1. /* PSDSetup.c */
  2. /* Copyright 1992, Gary D. McGath */
  3.  
  4.  
  5.  
  6. extern pascal void psdRectProc(GrafVerb verb, Rect *theRect);
  7. extern pascal psdTextProc(short byteCount, Ptr textBuf, Point numer, Point denom);
  8. extern pascal psdLineProc(Point newPt);
  9. extern pascal psdOvalProc(GrafVerb verb, Rect *theRect);
  10. extern pascal psdrRectProc(GrafVerb verb, Rect *theRect, short ovalwidth, 
  11.                 short ovalheight);
  12. extern pascal psdArcProc(GrafVerb verb, Rect *theRect, short startAngle, short arcAngle);
  13. extern pascal psdPolyProc(GrafVerb verb, PolyHandle thePoly);
  14. extern pascal psdBitsProc(BitMap *srcBits, Rect *srcRect, Rect *dstRect, short mode,
  15.                 RgnHandle maskRgn);
  16.  
  17. void psdSetupProcs(GrafPtr itsPort);
  18. pascal psdCommentProc(short kind, short dataSize, Handle dataHandle);
  19. pascal psdRgnProc(GrafVerb verb, RgnHandle theRgn);
  20.  
  21. /* Create a CGrafPort to draw to, and set up the bottleneck procedures */
  22. void psdSetupProcs(GrafPtr itsPort)
  23. {
  24.     QDProcsPtr psdProcs;
  25.     psdProcs = (QDProcsPtr) NewPtr(sizeof(QDProcs));
  26.     itsPort->grafProcs = psdProcs;
  27.     SetStdProcs(psdProcs);
  28.     psdProcs->textProc = (Ptr) psdTextProc;
  29.     psdProcs->lineProc = (Ptr) psdLineProc;
  30.     psdProcs->rectProc = (Ptr) psdRectProc;
  31.     psdProcs->rRectProc = (Ptr) psdrRectProc;
  32.     psdProcs->ovalProc = (Ptr) psdOvalProc;
  33.     psdProcs->arcProc = (Ptr) psdArcProc;
  34.     psdProcs->polyProc = (Ptr) psdPolyProc;
  35.     psdProcs->rgnProc = (Ptr) psdRgnProc;
  36.     psdProcs->bitsProc = (Ptr) psdBitsProc;
  37.     psdProcs->commentProc = (Ptr) psdCommentProc;
  38. }
  39.  
  40.  
  41. /* PicComments aren't handled in this program */
  42. pascal psdCommentProc(short kind, short dataSize, Handle dataHandle)
  43. {
  44. }
  45.  
  46. /* Neither are regions */
  47. pascal psdRgnProc(GrafVerb verb, RgnHandle theRgn) 
  48. {
  49. }
  50.